cond(true, x, y) → cond(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
↳ QTRS
↳ AAECC Innermost
cond(true, x, y) → cond(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
cond(true, x, y) → cond(gr(x, y), p(x), s(y))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
cond(true, x, y) → cond(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
cond(true, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
COND(true, x, y) → P(x)
COND(true, x, y) → COND(gr(x, y), p(x), s(y))
COND(true, x, y) → GR(x, y)
GR(s(x), s(y)) → GR(x, y)
cond(true, x, y) → cond(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
cond(true, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
COND(true, x, y) → P(x)
COND(true, x, y) → COND(gr(x, y), p(x), s(y))
COND(true, x, y) → GR(x, y)
GR(s(x), s(y)) → GR(x, y)
cond(true, x, y) → cond(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
cond(true, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
GR(s(x), s(y)) → GR(x, y)
cond(true, x, y) → cond(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
cond(true, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
GR(s(x), s(y)) → GR(x, y)
cond(true, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
cond(true, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
GR(s(x), s(y)) → GR(x, y)
From the DPs we obtained the following set of size-change graphs:
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
COND(true, x, y) → COND(gr(x, y), p(x), s(y))
cond(true, x, y) → cond(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
cond(true, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
COND(true, x, y) → COND(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
cond(true, x0, x1)
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
cond(true, x0, x1)
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ NonInfProof
COND(true, x, y) → COND(gr(x, y), p(x), s(y))
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))
(1) (COND(gr(x0, x1), p(x0), s(x1))=COND(true, x2, x3) ⇒ COND(true, x0, x1)≥COND(gr(x0, x1), p(x0), s(x1)))
(2) (gr(x0, x1)=true ⇒ COND(true, x0, x1)≥COND(gr(x0, x1), p(x0), s(x1)))
(3) (true=true ⇒ COND(true, s(x5), 0)≥COND(gr(s(x5), 0), p(s(x5)), s(0)))
(4) (gr(x6, x7)=true∧(gr(x6, x7)=true ⇒ COND(true, x6, x7)≥COND(gr(x6, x7), p(x6), s(x7))) ⇒ COND(true, s(x6), s(x7))≥COND(gr(s(x6), s(x7)), p(s(x6)), s(s(x7))))
(5) (COND(true, s(x5), 0)≥COND(gr(s(x5), 0), p(s(x5)), s(0)))
(6) (COND(true, x6, x7)≥COND(gr(x6, x7), p(x6), s(x7)) ⇒ COND(true, s(x6), s(x7))≥COND(gr(s(x6), s(x7)), p(s(x6)), s(s(x7))))
POL(0) = 0
POL(COND(x1, x2, x3)) = -1 + x2 - x3
POL(c) = -1
POL(false) = 1
POL(gr(x1, x2)) = x1
POL(p(x1)) = x1
POL(s(x1)) = 1 + x1
POL(true) = 0
The following pairs are in Pbound:
COND(true, x, y) → COND(gr(x, y), p(x), s(y))
The following rules are usable:
COND(true, x, y) → COND(gr(x, y), p(x), s(y))
p(0) → 0
p(s(x)) → x
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ NonInfProof
↳ QDP
↳ PisEmptyProof
gr(0, x) → false
gr(s(x), 0) → true
gr(s(x), s(y)) → gr(x, y)
p(0) → 0
p(s(x)) → x
gr(0, x0)
gr(s(x0), 0)
gr(s(x0), s(x1))
p(0)
p(s(x0))